import accessEnum from "@/access/accessEnum";

/**
 * 检查权限，返回 true（有权限），false（无权限）
 * @param loginUser 当前登录用户
 * @param needAccess 需要有的权限
 */
const checkAccess = (loginUser: any, needAccess = accessEnum.NOT_LOGIN) => {
  //不需要校验
  if (needAccess === accessEnum.NOT_LOGIN) {
    return true;
  }
  //需要登录才能访问
  const loginUserAccess = loginUser?.userRole ?? accessEnum.NOT_LOGIN;
  if (needAccess === accessEnum.USER) {
    // 如果用户没登录，那么表示无权限
    if (loginUserAccess === accessEnum.NOT_LOGIN) {
      return false;
    }
  }
  // 如果需要判定是否要管理员权限
  if (needAccess === accessEnum.ADMIN) {
    // 当前用户是否 是管理员
    if (loginUserAccess !== accessEnum.ADMIN) {
      return false;
    }
  }
  return true;
};

/**
 * 导出这个方法才能被人使用
 */
export default checkAccess;
